<?php
/**
 * 正则表达式
 */
class MatchValidator extends AbstractValidator
{	
	/**
	 * 正则表达式
	 * @var string
	 */
	public $pattern;
	/**
	 * 不和提供的正则匹配
	 * @var boolean
	 */
	public $not=false;
	/**
	 * 是否允许为空 
	 * @var boolean
	 */
	public $allowEmpty=true;
		
	/**
	 * 验证方法
	 * @param string $label  显示在页面的名称
	 * @param mix $value 要验证的值
	 */	
	public function validate($label,$value){
		if($this->allowEmpty && $this->isEmpty($value))
			return true;		
		if((!$this->not && !preg_match($this->pattern,$value)) || ($this->not && preg_match($this->pattern,$value)))
			return $this->message($label);		
		return true;		
	}
	/**
	 * 验证失败的信息
	 * @param string $label
	 */
	public function message($label){		
		if($this->language==='cn'){
			return $label.'必须跟正则表达式匹配';
		}		
	}		
}
